The present invention relates to apparatus for controlling a large manufacturing or distribution system, and more particularly to apparatus for controlling equipment that is physically separated and connected by a data communication link.
Programmable controllers, such as the one described in U.S. Pat. No. 4,858,101, typically are connected to industrial equipment, such as assembly lines and machine tools within a factory, to sequentially operate the equipment in accordance with a stored control program. The control program is written by the user and includes instructions which are executed to examine the condition of selected sensing devices on the controlled equipment, or to energize or deenergize selected operating devices on the controlled equipment contingent upon the status of one or more of the examined sensing devices.
Many types of sensing devices have been devised for detecting various conditions on the controlled equipment and providing an input signal to the programmable controller. The simplest of these types of devices are switches which send a DC or an AC signal to the programmable controller. Other devices, such as temperature or pressure sensors provide a four to twenty milliampere analog signal having a magnitude which corresponds to the magnitude of the condition being sensed. Similarly with respect to the operating devices, the programmable controller must be capable of providing different levels of DC, AC and analog output signals, for driving a variety of actuators on the controlled equipment.
Since a single programmable controller may control an entire assembly line, different sensing and operating devices may be relatively widely spaced apart. In this case, a central processing unit was placed in a main rack and sensing and operating devices were coupled to that rack. Other sensing and operating devices were connected to remotely located racks which were interfaced the main rack by a communication link. Input/output (I/O) data was exchanged between the racks by the central processing unit addressing each of the remote racks. Only a single central processing unit was connected to an I/O communication link.
As control systems became more complex, multiple programmable controllers were required to govern the operation of large scale systems. The multiple programmable controllers were connected to local area communication networks over which they exchanged data. Each programmable controller was assigned a unique address on the network and responded the messages sent to that address. The number of devices connected to a given local area communication network was limited by the communication protocol employed. The protocol defined the number of addresses that could be used to identify the network devices. If more devices needed to be addressed than the protocol allowed, another communication network had to be established. Although it was possible to create a new protocol with enlarged addressing capability, existing devices which used the original protocol would be incompatible with the new protocol.
It is desirable to apply programmable controllers to very large scale manufacturing and distribution systems, such as oil and gas production networks and utility systems. For example, a gas production system can comprise a large number of unattended wells located over a sizeable geographical area. In these applications, a telephone company or other common carrier provides the communication links between the different locations, instead of local area networks. When common carriers are employed to link devices of a large scale manufacturing and distribution systems, it may be desirable to be able to attach a greater number of devices to the communication link than can be addressed by a conventional protocol. For example, it may be economically desirable to couple the remote locations with a single dedicated telephone network rather than several separate links.
Further some applications may require two or more programmable controllers to access different sensing or operating devices at the same remote location. For example, one programmable controller may operate the well head pump and valves, while another controller gathers data on the volume of gas produced, In this case, it would be more economical to use a single communication link, rather than separate ones for each programmable controller.